@charset "UTF-8";
/* ================ reset.scss ================================================================ */
/* derived from */
/* http://meyerweb.com/eric/tools/css/reset/ */
/* v1.0 | 20080212 */
@import url(https://fonts.googleapis.com/css?family=Open+Sans:300italic,400italic,300,400,600,700,800);
@import url(https://fonts.googleapis.com/css?family=Inconsolata:400,700);
@import url(https://fonts.googleapis.com/css?family=Lora:400,400i,700,700i);
html, body, div, span, applet, object, iframe,
h1,
main p.subtitle, h2, main #SignificantRevisions summary, main .front-grid .contents h3, h3, h4, h5, h6, p, blockquote, pre,
a, abbr, acronym, address, big, cite, code,
del, dfn, em, font, img, ins, kbd, q, s, samp,
small, strike, strong, sub, sup, tt, var,
b, u, i, center,
dl, dt, dd, ol, ul, li,
fieldset, form, label, legend,
table, caption, tbody, tfoot, thead, tr, th, td {
  margin: 0;
  padding: 0;
  border: 0;
  outline: 0;
  font-size: 100%;
  vertical-align: baseline;
  background: transparent; }

body {
  line-height: 1; }

ol, ul {
  list-style: none; }

blockquote, q {
  quotes: none; }

blockquote:before, blockquote:after,
q:before, q:after {
  content: '';
  content: none; }

/* remember to define focus styles! */
:focus {
  outline: 0; }

/* remember to highlight inserts somehow! */
ins {
  text-decoration: none; }

del {
  text-decoration: line-through; }

/* tables still need 'cellspacing="0"' in the markup */
table {
  border-collapse: collapse;
  border-spacing: 0; }

div.clear {
  clear: both; }

/* ................ */
/*
tw-grey is hsl(145, 5%, 52%)
*/
@font-face {
  font-family: 'Marydale';
  src: url("/fonts/marydale/marydale-webfont.eot");
  src: url("/fonts/marydale/marydale-webfont.eot?#iefix") format("embedded-opentype"), url("/fonts/marydale/marydale-webfont.woff") format("woff"), url("/fonts/marydale/marydale-webfont.ttf") format("truetype"), url("/fonts/marydale/marydale-webfont.svg#marydaleregular") format("svg");
  font-weight: normal;
  font-style: normal; }

@font-face {
  font-family: 'FontAwesome';
  /* src: url("https://netdna.bootstrapcdn.com/font-awesome/4.0.0/fonts/fontawesome-webfont.eot"); */
  src: url("./fonts/fontawesome-webfont.eot");
  /* src: url("https://netdna.bootstrapcdn.com/font-awesome/4.0.0/fonts/fontawesome-webfont.eot?#iefix") format("embedded-opentype"), url("https://netdna.bootstrapcdn.com/font-awesome/4.0.0/fonts/fontawesome-webfont.woff") format("woff"), url("https://netdna.bootstrapcdn.com/font-awesome/4.0.0/fonts/fontawesome-webfont.ttf") format("truetype"), url("https://netdna.bootstrapcdn.com/font-awesome/4.0.0/fonts/fontawesome-webfont.svgfontawesomeregular") format("svg"); */
  src: url("./fonts/fontawesome-webfont.eot?#iefix") format("embedded-opentype"), url("./fonts/fontawesome-webfont.woff") format("woff"), url("./fonts/fontawesome-webfont.ttf") format("truetype"), url("./fonts/fontawesome-webfont.svg") format("svg");
  font-weight: normal;
  font-style: normal; }

.icon-twitter:before {
  content: "";
  font-family: FontAwesome;
  font-weight: normal;
  font-style: normal;
  text-decoration: inherit;
  -webkit-font-smoothing: antialiased; }

.icon-rss:before {
  content: "";
  font-family: FontAwesome;
  font-weight: normal;
  font-style: normal;
  text-decoration: inherit;
  -webkit-font-smoothing: antialiased; }

.icon-bars:before {
  content: "";
  font-family: FontAwesome;
  font-weight: normal;
  font-style: normal;
  text-decoration: inherit;
  -webkit-font-smoothing: antialiased; }

.icon-help:before {
  content: "";
  font-family: FontAwesome;
  font-weight: normal;
  font-style: normal;
  text-decoration: inherit;
  -webkit-font-smoothing: antialiased; }

.icon-close:before, .navmenu .close:before {
  content: "⨉"; }

.icon-tag:before {
  content: "";
  font-family: FontAwesome;
  font-weight: normal;
  font-style: normal;
  text-decoration: inherit;
  -webkit-font-smoothing: antialiased; }

.icon svg {
  height: 1em;
  width: 1em;
  fill: white; }

table.dark-head {
  font-family: Open Sans, sans-serif;
  border: solid thin #070D4A; }
  table.dark-head tbody {
    font-size: 80%; }
  table.dark-head td {
    vertical-align: middle;
    padding: 5px 2em; }
  table.dark-head th, table.dark-head caption {
    background-color: #070D4A;
    color: white;
    font-weight: bold; }
  table.dark-head th {
    padding: 1em 1.6em;
    text-align: left; }
  table.dark-head tr:nth-child(even) {
    background-color: #F7F8FE; }
  table.dark-head caption {
    text-align: center;
    border: none; }

table.borders {
  background-color: #F7F8FE;
  font-family: Open Sans, sans-serif;
  font-size: 90%;
  padding: 0.5em 1em;
  border: 2px solid #0f1872; }
  table.borders th, table.borders td {
    padding: 0.5em;
    border: thin solid #cad0f8; }
  table.borders th {
    border-bottom: 2px solid #0f1872; }
  table.borders caption {
    border: none; }

main .photo, main .top-image-full, main .photo-right, main div.fullPhoto, main .figure {
  max-width: 100%;
  margin: 1em auto; }
  main .photo .credit, main .top-image-full .credit, main .photo-right .credit, main div.fullPhoto .credit, main .figure .credit {
    color: #808080;
    font-size: 80%; }
  main .photo .photoCaption, main .top-image-full .photoCaption, main .photo-right .photoCaption, main div.fullPhoto .photoCaption, main .figure .photoCaption {
    font-size: 80%;
    font-style: italic;
    min-height: 1em; }

main div.fullPhoto, main .figure {
  float: none;
  margin: 1em 0; }

main .photo-right {
  float: right;
  margin: 1em -250px 1em 1em; }

main img {
  max-width: 100%; }

main .article-card {
  font-size: 80%; }
  @media (max-width: 599px) {
    main .article-card {
      font-size: 19px; } }
  main .article-card h3 {
    font-size: 130%;
    font-weight: bold; }
    main .article-card h3 a {
      border: none;
      padding-bottom: 0; }
      main .article-card h3 a:hover {
        text-decoration: underline; }
  main .article-card summary h3 {
    display: inline; }
  main .article-card:before {
    display: block;
    background-color: #070D4A;
    height: 3px;
    border-right: 3px solid #ef5ba1;
    content: ""; }
  main .article-card .meta {
    font-family: Open Sans, sans-serif;
    display: grid;
    grid-template-columns: 2fr 1fr;
    grid-template-areas: "cr tp" "cr ln" "cr dt" "mo mo" "tg tg"; }
    main .article-card .meta p {
      margin: 0; }
  main .article-card .credits {
    grid-area: cr;
    font-weight: bold; }
  main .article-card .date {
    grid-area: dt;
    font-weight: 600;
    color: #A9A7A7;
    font-family: Open Sans, sans-serif; }
  main .article-card .type {
    grid-area: tp;
    font-weight: 600;
    color: #A9A7A7;
    font-family: Open Sans, sans-serif;
    text-transform: uppercase; }
  main .article-card .length {
    grid-area: ln;
    font-weight: 600;
    color: #A9A7A7;
    font-family: Open Sans, sans-serif; }
  main .article-card a.more {
    font-family: Open Sans, sans-serif;
    font-weight: bold;
    color: #ef5ba1;
    border: none;
    padding-bottom: 0; }
    main .article-card a.more:hover {
      text-decoration: underline; }
  main .article-card p.more {
    margin: 1em 0;
    grid-area: mo;
    font-family: Open Sans, sans-serif;
    font-weight: bold;
    color: #ef5ba1; }
    main .article-card p.more a {
      border: none;
      padding-bottom: 0; }
      main .article-card p.more a:hover {
        text-decoration: underline; }
    main .article-card p.more a:hover {
      color: #ef5ba1; }
  main .article-card .tags {
    grid-area: tg; }
    main .article-card .tags a {
      border: none;
      padding-bottom: 0; }
      main .article-card .tags a:hover {
        text-decoration: underline; }
  main .article-card .picture
p {
    font-style: italic; }
  main .article-card .book-cover {
    max-height: 250px; }

/* ==== global ================================ */
html {
  box-sizing: border-box; }

*, *:before, *:after {
  box-sizing: inherit; }

body {
  font-size: 16px; }

main {
  line-height: 1.5;
  font-family: Open Sans, sans-serif; }

.error {
  background-color: rgba(253, 147, 151, 0.34); }

.todo {
  background-color: rgba(255, 255, 0, 0.3); }

.draft-notice {
  border: thin solid red;
  font-family: sans-serif;
  margin: 1em 10%;
  padding: 0.5em;
  text-align: center; }
  .draft-notice h1, .draft-notice main p.subtitle, main .draft-notice p.subtitle {
    font-size: 120%;
    color: black; }
  .draft-notice p {
    color: red; }

.clickable, a.permalink, a:hover {
  text-decoration: underline;
  cursor: pointer; }

a {
  color: inherit;
  text-decoration: none; }

a:hover {
  color: #3546E5; }

a.button {
  color: white;
  background: #9ca9f3;
  font-family: Open Sans, sans-serif;
  font-style: normal;
  font-weight: bold;
  font-size: 14px;
  padding: 5px;
  border-radius: 5px;
  margin: 2px;
  white-space: nowrap;
  cursor: pointer;
  border: none;
  vertical-align: middle; }
  a.button:hover {
    background: #6f81ed; }

a.permalink {
  color: #3546E5;
  border: none !important;
  text-decoration: none !important; }
  a.permalink:before {
    content: "#"; }

.tag-link {
  color: #3546E5;
  text-transform: uppercase; }
  .tag-link:before {
    content: " ";
    font-family: FontAwesome;
    font-weight: normal;
    font-style: normal;
    text-decoration: inherit;
    -webkit-font-smoothing: antialiased; }

/* ................................................................ */
@font-face {
  font-family: 'FontAwesome';
  /* src: url("https://netdna.bootstrapcdn.com/font-awesome/4.0.0/fonts/fontawesome-webfont.eot"); */
  src: url("./fonts/fontawesome-webfont.eot");
  /* src: url("https://netdna.bootstrapcdn.com/font-awesome/4.0.0/fonts/fontawesome-webfont.eot?#iefix") format("embedded-opentype"), url("https://netdna.bootstrapcdn.com/font-awesome/4.0.0/fonts/fontawesome-webfont.woff") format("woff"), url("https://netdna.bootstrapcdn.com/font-awesome/4.0.0/fonts/fontawesome-webfont.ttf") format("truetype"), url("https://netdna.bootstrapcdn.com/font-awesome/4.0.0/fonts/fontawesome-webfont.svgfontawesomeregular") format("svg"); */
  src: url("./fonts/fontawesome-webfont.eot?#iefix") format("embedded-opentype"), url("./fonts/fontawesome-webfont.woff") format("woff"), url("./fonts/fontawesome-webfont.ttf") format("truetype"), url("./fonts/fontawesome-webfont.svg") format("svg");
  font-weight: normal;
  font-style: normal; }

.icon-twitter:before {
  content: "";
  font-family: FontAwesome;
  font-weight: normal;
  font-style: normal;
  text-decoration: inherit;
  -webkit-font-smoothing: antialiased; }

.icon-rss:before {
  content: "";
  font-family: FontAwesome;
  font-weight: normal;
  font-style: normal;
  text-decoration: inherit;
  -webkit-font-smoothing: antialiased; }

.icon-bars:before {
  content: "";
  font-family: FontAwesome;
  font-weight: normal;
  font-style: normal;
  text-decoration: inherit;
  -webkit-font-smoothing: antialiased; }

.icon-help:before {
  content: "";
  font-family: FontAwesome;
  font-weight: normal;
  font-style: normal;
  text-decoration: inherit;
  -webkit-font-smoothing: antialiased; }

.icon-close:before, .navmenu .close:before {
  content: "⨉"; }

.icon-tag:before {
  content: "";
  font-family: FontAwesome;
  font-weight: normal;
  font-style: normal;
  text-decoration: inherit;
  -webkit-font-smoothing: antialiased; }

.icon svg {
  height: 1em;
  width: 1em;
  fill: white; }

/* ==== banner ================ */
#banner {
  border-right: 30px solid #ef5ba1;
  display: grid;
  background-color: #070D4A;
  background-position: left 60px top;
  height: 100px;
  font-family: Open Sans, sans-serif;
  color: white;
  grid-template-columns: 2fr 2fr 60px;
  grid-template-areas: "lg sh nb" "tm tm .";
  grid-template-rows: 1fr 1.5em; }
  #banner .search {
    grid-area: sh;
    text-align: right;
    padding-top: 10px;
    padding-right: 30px; }
    #banner .search .button {
      cursor: pointer;
      background-color: transparent;
      color: white;
      width: 24px;
      font-size: 100%;
      border: none; }
      #banner .search .button:before {
        content: "";
        font-family: FontAwesome;
        font-weight: normal;
        font-style: normal;
        text-decoration: inherit;
        -webkit-font-smoothing: antialiased; }
    #banner .search input.field {
      width: 15em; }
  #banner .name-logo {
    grid-area: lg;
    padding-left: 10px; }
  #banner .navmenu-button {
    grid-area: nb;
    font-size: 36px;
    padding-right: 5px; }
  #banner .icon:hover {
    text-decoration: none; }
  #banner a:hover {
    color: #ef5ba1; }
  #banner .top-menu {
    font-family: Lora, serif;
    grid-area: tm;
    text-align: right;
    font-size: 16px; }
    #banner .top-menu ul {
      float: right;
      list-style-image: none;
      list-style-position: outside;
      list-style-type: none;
      margin: 0;
      padding: 0; }
    #banner .top-menu ul li {
      float: left;
      padding-right: 18px; }
  @media screen and (max-width: 600px) {
    #banner {
      grid-template-columns: 1fr 60px;
      grid-template-areas: "lg nb"; }
      #banner .search, #banner .top-menu {
        display: none; } }
/* ................................................................ */
/* ==== footer ================ */
#page-footer {
  font-family: Open Sans, sans-serif;
  border-right: 30px solid #ef5ba1;
  position: relative;
  background-color: #070D4A;
  color: white;
  min-height: 80px; }
  #page-footer a {
    color: white;
    text-decoration: none; }
  #page-footer div.copyright {
    display: block;
    font-size: 80%;
    position: absolute;
    bottom: 5px;
    left: 5px; }
    #page-footer div.copyright a:hover {
      padding-top: 5px;
      color: #ef5ba1;
      text-decoration: underline; }
  @media screen and (min-width: 600px) {
    #page-footer {
      min-height: 60px; }
      #page-footer div.copyright {
        left: auto;
        right: 60px; } }
  #page-footer .tw-logo {
    position: absolute;
    left: 5px;
    top: 15px; }
    #page-footer .tw-logo img {
      width: 200px; }
  #page-footer .menu-button {
    position: absolute;
    right: 30px;
    top: 5px;
    font-size: 200%; }

/* ................................................................ */
.navmenu {
  border-right: 30px solid #ef5ba1;
  padding: 5px;
  color: white;
  background-color: #070D4A;
  font-size: 16px;
  font-family: Open Sans, sans-serif;
  line-height: 36px; }
  .navmenu .nav-head {
    display: grid;
    grid-template-columns: 1fr 3fr 1fr;
    grid-template-areas: ".  sh  cl"; }
  .navmenu .nav-body {
    display: grid;
    grid-template-columns: 3fr 1fr 1fr 1fr 1fr;
    grid-template-areas: "tp ab ct fd  tw"; }
  .navmenu h2, .navmenu main #SignificantRevisions summary, main #SignificantRevisions .navmenu summary, .navmenu main .front-grid .contents h3, main .front-grid .contents .navmenu h3 {
    column-span: all;
    font-weight: 600;
    text-transform: uppercase;
    font-size: 14px; }
  .navmenu .search {
    grid-area: sh; }
  .navmenu .closediv {
    grid-area: cl;
    text-align: right; }
  .navmenu .topics {
    grid-area: tp;
    column-count: 2; }
    .navmenu .topics p {
      font-family: Lora, serif; }
  .navmenu .about {
    grid-area: ab; }
  .navmenu .content {
    grid-area: ct; }
  .navmenu .tw {
    grid-area: tw; }
  .navmenu .feeds {
    grid-area: fd; }
  .navmenu a:hover {
    color: #ef5ba1; }
  .navmenu .search {
    display: block; }
    .navmenu .search .button {
      cursor: pointer;
      background-color: transparent;
      color: white;
      width: 24px;
      font-size: 100%;
      border: none; }
      .navmenu .search .button:before {
        content: "";
        font-family: FontAwesome;
        font-weight: normal;
        font-style: normal;
        text-decoration: inherit;
        -webkit-font-smoothing: antialiased; }
    .navmenu .search input.field {
      width: 10em; }
  .navmenu .close {
    color: white;
    cursor: pointer;
    padding-right: 0.5em; }
    .navmenu .close:hover {
      color: #ef5ba1; }
  .navmenu .icon-close, .navmenu .close {
    font-size: 200%; }
  @media screen and (min-width: 600px) {
    .navmenu .search {
      display: none; } }
  @media screen and (max-width: 800px) {
    .navmenu .nav-head {
      grid-template-areas: "sh  sh  cl"; }
    .navmenu .nav-body {
      grid-template-columns: 1fr 1fr;
      grid-template-areas: "sh cl" "tp tp" "ab ct" "fd  tw"; } }
/* ==== framing ================ */
main, #banner, #page-footer, .navmenu {
  margin-left: 5px;
  margin-right: 5px;
  max-width: 960px; }
  @media screen and (min-width: 750px) {
    main, #banner, #page-footer, .navmenu {
      margin-left: 20px; } }
main {
  background-color: white;
  min-height: 500px;
  margin-bottom: 1em; }
  main::after {
    clear: both;
    content: "";
    display: block; }

@media (min-width: 1400px) {
  body {
    display: flex;
    flex-direction: column;
    align-items: center; }
  main, #banner, #page-footer, .navmenu {
    width: 960px; } }

#top-navmenu {
  display: none; }

#bottom-navmenu {
  display: block; }

.navmenu-button {
  cursor: pointer; }

/* ................................................................ */
.short-front {
  font-family: Open Sans, sans-serif;
  width: 650px;
  float: left;
  margin-bottom: 3em; }
  .short-front .author {
    display: grid;
    grid-template-areas: "photo name" "photo bio";
    grid-column-gap: 2em; }
    .short-front .author .photo, .short-front .author main .top-image-full, main .short-front .author .top-image-full, .short-front .author main div.fullPhoto, main .short-front .author div.fullPhoto, .short-front .author main .figure, main .short-front .author .figure, .short-front .author main .photo-right, main .short-front .author .photo-right {
      grid-area: photo;
      margin: 0; }
      .short-front .author .photo img, .short-front .author main .top-image-full img, main .short-front .author .top-image-full img, .short-front .author main div.fullPhoto img, main .short-front .author div.fullPhoto img, .short-front .author main .figure img, main .short-front .author .figure img, .short-front .author main .photo-right img, main .short-front .author .photo-right img {
        width: 60px; }
    .short-front .author .name {
      grid-area: name;
      margin: 0; }
    .short-front .author .bio {
      grid-area: bio; }
  .short-front p.date {
    font-weight: bold; }

main h1, main p.subtitle {
  font-size: 200%;
  font-weight: normal;
  margin: 1em 0;
  line-height: 1.6; }

main p.subtitle {
  font-size: 120%; }

main hr.topSection {
  display: block;
  background-color: #070D4A;
  height: 10px;
  border-right: 10px solid #ef5ba1;
  content: "";
  width: 70%;
  margin: 5em 0 0 0; }

main div.top-image-right {
  float: right;
  margin: 0 0 1em 20px;
  clear: both;
  width: 220px;
  font-size: 80%;
  font-style: italic;
  font-family: Open Sans, sans-serif; }
  main div.top-image-right img {
    width: 220px; }
  main div.top-image-right .credit {
    color: #808080;
    font-size: 80%; }

main .top-image-full {
  float: none;
  margin: 1em 0;
  max-width: 650px; }
  main .top-image-full .credit {
    text-align: left; }

main p.abstract {
  /* prose mixin */
  line-height: 1.6;
  color: #303633;
  font-family: Lora, serif;
  max-width: 650px;
  font-style: italic;
  margin-bottom: 2em; }
  main p.abstract h2, main p.abstract #SignificantRevisions summary, main #SignificantRevisions p.abstract summary, main p.abstract .front-grid .contents h3, main .front-grid .contents p.abstract h3, main p.abstract h3, main p.abstract h4, main p.abstract h5 {
    font-weight: bold; }
  main p.abstract h1, main p.abstract p.subtitle {
    font-size: 200%; }
  main p.abstract h2, main p.abstract #SignificantRevisions summary, main #SignificantRevisions p.abstract summary, main p.abstract .front-grid .contents h3, main .front-grid .contents p.abstract h3 {
    font-size: 150%; }
  main p.abstract h3 {
    font-size: 120%; }
  main p.abstract p, main p.abstract h1, main p.abstract h2, main p.abstract #SignificantRevisions summary, main #SignificantRevisions p.abstract summary, main p.abstract .front-grid .contents h3, main .front-grid .contents p.abstract h3, main p.abstract h3, main p.abstract h4, main p.abstract h5 ul {
    margin: 1em 0; }
  main p.abstract a {
    border-bottom: thin solid;
    padding-bottom: 1px; }
  main p.abstract a:hover {
    text-decoration: none; }
  main p.abstract .img-link a, main p.abstract a.img-link, main p.abstract a.img {
    border-bottom: none;
    padding-bottom: 0; }
  main p.abstract dd {
    margin-left: 2em; }
  main p.abstract ul {
    list-style: square;
    margin-left: 1.5em; }
  main p.abstract ol {
    list-style: decimal;
    margin-left: 1.5em; }
  main p.abstract pre {
    font-size: 90%;
    font-family: Inconsolata, monospace; }
  main p.abstract code {
    font-family: Inconsolata, monospace; }
  main p.abstract span.credit {
    color: #808080;
    font-size: 80%; }
  main p.abstract hr {
    border: none;
    display: block;
    background-color: #070D4A;
    height: 3px;
    border-right: 3px solid #ef5ba1;
    content: "";
    margin: 10px 15px; }
  main p.abstract blockquote {
    /* margin-left: 3em; */
    border-left: 2px solid #0f1872;
    padding-left: 1em;
    font-style: italic;
    margin-left: 2em; }
  main p.abstract .show-code summary {
    color: #A9A7A7;
    font-weight: bold;
    font-family: Open Sans, sans-serif;
    font-size: 80%; }
  main p.abstract .show-code pre {
    background-color: #F7F8FE; }

main .twitter-card {
  width: 250px;
  font-size: 80%;
  font-style: italic;
  margin-bottom: 2em; }
  @media (min-width: 960px) {
    main .twitter-card {
      float: right; } }
main p.date {
  font-weight: 600;
  color: #A9A7A7;
  font-family: Open Sans, sans-serif;
  margin: 1em 0; }

main hr {
  display: block;
  background-color: #070D4A;
  height: 3px;
  border-right: 3px solid #ef5ba1;
  content: ""; }

main .front-grid {
  font-family: Open Sans, sans-serif; }
  @media (min-width: 600px) {
    main .front-grid {
      display: grid;
      grid-template-areas: "aut con" "tag con" "tra con" "tbx con";
      grid-template-columns: 2fr 3fr;
      grid-gap: 0 2em;
      padding: 1em 0;
      font-size: 90%; } }
  main .front-grid .translations {
    grid-area: tra; }
  main .front-grid .tags {
    grid-area: tag; }
  main .front-grid .translations, main .front-grid .tags {
    margin: 2em 0 3em 0; }
    main .front-grid .translations p, main .front-grid .tags p {
      margin: 0.5em 0;
      line-height: 1.6; }
  main .front-grid div.topBox {
    grid-area: tbx;
    margin: 2em 0;
    font-size: 90%; }
  main .front-grid div.translations b {
    grid-area: tra;
    text-transform: uppercase;
    color: #3546E5;
    font-weight: 600; }
  main .front-grid .contents {
    grid-area: con;
    font-weight: 600;
    line-height: 1.6;
    /* to add bullet points to contents entries remove the `ul ul` margin
       rule, remove `list-style-type none` from li (will pick up square
       from global) and add `margin-left: 1.5em;` to li */ }
    main .front-grid .contents a {
      color: #3546E5; }
    main .front-grid .contents ul {
      margin: 0;
      -webkit-padding-start: 0; }
    main .front-grid .contents ul ul {
      margin: 0 1.2em; }
    main .front-grid .contents li {
      list-style-type: none; }
    main .front-grid .contents h2, main .front-grid .contents #SignificantRevisions summary, main #SignificantRevisions .front-grid .contents summary, main .front-grid .contents h3 {
      font-size: 100%;
      font-weight: bold;
      margin: 0.5em 0;
      text-transform: uppercase; }
    main .front-grid .contents h3 {
      margin: 0.5em 0; }
    main .front-grid .contents .contents-expand {
      color: white;
      background: #9ca9f3;
      font-family: Open Sans, sans-serif;
      font-style: normal;
      font-weight: bold;
      font-size: 14px;
      padding: 5px;
      border-radius: 5px;
      margin: 2px;
      white-space: nowrap;
      cursor: pointer;
      border: none;
      vertical-align: middle;
      float: right;
      margin: 0 100px 0 0; }
      main .front-grid .contents .contents-expand:hover {
        background: #6f81ed; }

main .author-list {
  grid-area: aut;
  display: grid;
  grid-row-gap: 3em; }

main .author img {
  max-width: 80px; }

main .author p {
  margin-left: 0;
  font-size: 90%; }

main .author .bio {
  /* prose mixin */
  line-height: 1.6;
  color: #303633;
  font-family: Lora, serif; }
  main .author .bio h2, main .author .bio #SignificantRevisions summary, main #SignificantRevisions .author .bio summary, main .author .bio h3, main .author .bio h4, main .author .bio h5 {
    font-weight: bold; }
  main .author .bio h1, main .author .bio p.subtitle {
    font-size: 200%; }
  main .author .bio h2, main .author .bio #SignificantRevisions summary, main #SignificantRevisions .author .bio summary, main .author .bio .front-grid .contents h3, main .front-grid .contents .author .bio h3 {
    font-size: 150%; }
  main .author .bio h3 {
    font-size: 120%; }
  main .author .bio p, main .author .bio h1, main .author .bio h2, main .author .bio #SignificantRevisions summary, main #SignificantRevisions .author .bio summary, main .author .bio h3, main .author .bio h4, main .author .bio h5 ul {
    margin: 1em 0; }
  main .author .bio a {
    border-bottom: thin solid;
    padding-bottom: 1px; }
  main .author .bio a:hover {
    text-decoration: none; }
  main .author .bio .img-link a, main .author .bio a.img-link, main .author .bio a.img {
    border-bottom: none;
    padding-bottom: 0; }
  main .author .bio dd {
    margin-left: 2em; }
  main .author .bio ul {
    list-style: square;
    margin-left: 1.5em; }
  main .author .bio ol {
    list-style: decimal;
    margin-left: 1.5em; }
  main .author .bio pre {
    font-size: 90%;
    font-family: Inconsolata, monospace; }
  main .author .bio code {
    font-family: Inconsolata, monospace; }
  main .author .bio span.credit {
    color: #808080;
    font-size: 80%; }
  main .author .bio hr {
    border: none;
    display: block;
    background-color: #070D4A;
    height: 3px;
    border-right: 3px solid #ef5ba1;
    content: "";
    margin: 10px 15px; }
  main .author .bio blockquote {
    /* margin-left: 3em; */
    border-left: 2px solid #0f1872;
    padding-left: 1em;
    font-style: italic;
    margin-left: 2em; }
  main .author .bio .show-code summary {
    color: #A9A7A7;
    font-weight: bold;
    font-family: Open Sans, sans-serif;
    font-size: 80%; }
  main .author .bio .show-code pre {
    background-color: #F7F8FE; }

main .author .name {
  color: #ef5ba1;
  font-weight: 600;
  font-style: normal;
  font-size: 100%;
  margin: 1em 0; }

/* pages to check
http://localhost:1963/articles/programs-in-product-mode.html
  design dead 
not just standing up
short front matter

*/
main .group-contents {
  background-color: #F7F8FE;
  padding: 2em; }
  @media (min-width: 600px) {
    main .group-contents {
      display: grid;
      grid-template-columns: 2fr 1fr;
      grid-template-areas: "it ig" "tt ig" "au ig" "mn mn" "hd hd" "pl pl";
      margin: 2em; } }
  main .group-contents img {
    width: 200px;
    grid-area: ig; }
  main .group-contents p {
    margin: 1em 0; }
  main .group-contents .intro {
    grid-area: it;
    margin: 0; }
  main .group-contents .title {
    grid-area: tt;
    color: #ef5ba1;
    font-size: 120%;
    font-weight: bold; }
  main .group-contents .main {
    grid-area: mn; }
  main .group-contents .head {
    grid-area: hd;
    font-weight: bold;
    font-family: Open Sans, sans-serif; }
  main .group-contents .content-author {
    grid-area: au;
    margin-top: 0; }
  main .group-contents .pattern-list {
    grid-area: pl; }
  main .group-contents .main a, main .group-contents ul a {
    color: #3546E5;
    border: none;
    padding-bottom: 0;
    font-weight: bold;
    font-family: Open Sans, sans-serif; }
    main .group-contents .main a:hover, main .group-contents ul a:hover {
      text-decoration: underline; }
  main .group-contents ul {
    list-style: none;
    margin-left: 0; }
    @media (min-width: 600px) {
      main .group-contents ul {
        columns: 2; } }
body {
  overflow-x: hidden !important; }

main {
  font-size: 16px;
  font-family: Lora, serif; }
  main .paperBody {
    clear: both;
    font-size: 16px; }
  main .paperBody.deep > section > h2, main #SignificantRevisions .paperBody.deep > section > summary, main .front-grid .contents .paperBody.deep > section > h3 {
    font-size: 170%;
    margin-top: 0; }
    main .paperBody.deep > section > h2::before, main #SignificantRevisions .paperBody.deep > section > summary::before, main .front-grid .contents .paperBody.deep > section > h3::before {
      display: block;
      background-color: #070D4A;
      height: 10px;
      border-right: 10px solid #ef5ba1;
      content: "";
      width: 70%;
      margin-top: 5em; }
  main .paperBody.deep h3 {
    font-size: 120%;
    margin-top: 2em; }
  main .paperBody.deep section:first-child h2, main .paperBody.deep section:first-child #SignificantRevisions summary, main #SignificantRevisions .paperBody.deep section:first-child summary, main .paperBody.deep section:first-child .front-grid .contents h3, main .front-grid .contents .paperBody.deep section:first-child h3 {
    margin-top: 3em; }
    main .paperBody.deep section:first-child h2::before, main .paperBody.deep section:first-child #SignificantRevisions summary::before, main #SignificantRevisions .paperBody.deep section:first-child summary::before, main .paperBody.deep section:first-child .front-grid .contents h3::before, main .front-grid .contents .paperBody.deep section:first-child h3::before {
      display: none; }
  main .paperBody.shallow h2, main .paperBody.shallow #SignificantRevisions summary, main #SignificantRevisions .paperBody.shallow summary, main .paperBody.shallow .front-grid .contents h3, main .front-grid .contents .paperBody.shallow h3 {
    font-size: 150%; }
  main .paperBody, main .appendix, main .footnote-list, main .furtherReading, main .acknowledgements, main .revisions {
    /* prose mixin */
    line-height: 1.6;
    color: #303633;
    font-family: Lora, serif;
    max-width: 650px; }
    main .paperBody h2, main .paperBody #SignificantRevisions summary, main #SignificantRevisions .paperBody summary, main .paperBody .front-grid .contents h3, main .front-grid .contents .paperBody h3, main .paperBody h3, main .paperBody h4, main .paperBody h5, main .appendix h2, main .footnote-list h2, main .furtherReading h2, main .acknowledgements h2, main .revisions h2, main .appendix #SignificantRevisions summary, main .footnote-list #SignificantRevisions summary, main .furtherReading #SignificantRevisions summary, main .acknowledgements #SignificantRevisions summary, main .revisions #SignificantRevisions summary, main #SignificantRevisions .appendix summary, main #SignificantRevisions .footnote-list summary, main #SignificantRevisions .furtherReading summary, main #SignificantRevisions .acknowledgements summary, main #SignificantRevisions .revisions summary, main .appendix .front-grid .contents h3, main .footnote-list .front-grid .contents h3, main .furtherReading .front-grid .contents h3, main .acknowledgements .front-grid .contents h3, main .revisions .front-grid .contents h3, main .front-grid .contents .appendix h3, main .front-grid .contents .footnote-list h3, main .front-grid .contents .furtherReading h3, main .front-grid .contents .acknowledgements h3, main .front-grid .contents .revisions h3, main .appendix h3, main .footnote-list h3, main .furtherReading h3, main .acknowledgements h3, main .revisions h3, main .appendix h4, main .footnote-list h4, main .furtherReading h4, main .acknowledgements h4, main .revisions h4, main .appendix h5, main .footnote-list h5, main .furtherReading h5, main .acknowledgements h5, main .revisions h5 {
      font-weight: bold; }
    main .paperBody h1, main .paperBody p.subtitle, main .appendix h1, main .footnote-list h1, main .furtherReading h1, main .acknowledgements h1, main .revisions h1, main .appendix p.subtitle, main .footnote-list p.subtitle, main .furtherReading p.subtitle, main .acknowledgements p.subtitle, main .revisions p.subtitle {
      font-size: 200%; }
    main .paperBody h2, main .paperBody #SignificantRevisions summary, main #SignificantRevisions .paperBody summary, main .paperBody .front-grid .contents h3, main .front-grid .contents .paperBody h3, main .appendix h2, main .footnote-list h2, main .furtherReading h2, main .acknowledgements h2, main .revisions h2, main .appendix #SignificantRevisions summary, main .footnote-list #SignificantRevisions summary, main .furtherReading #SignificantRevisions summary, main .acknowledgements #SignificantRevisions summary, main .revisions #SignificantRevisions summary, main #SignificantRevisions .appendix summary, main #SignificantRevisions .footnote-list summary, main #SignificantRevisions .furtherReading summary, main #SignificantRevisions .acknowledgements summary, main #SignificantRevisions .revisions summary, main .appendix .front-grid .contents h3, main .footnote-list .front-grid .contents h3, main .furtherReading .front-grid .contents h3, main .acknowledgements .front-grid .contents h3, main .revisions .front-grid .contents h3, main .front-grid .contents .appendix h3, main .front-grid .contents .footnote-list h3, main .front-grid .contents .furtherReading h3, main .front-grid .contents .acknowledgements h3, main .front-grid .contents .revisions h3 {
      font-size: 150%; }
    main .paperBody h3, main .appendix h3, main .footnote-list h3, main .furtherReading h3, main .acknowledgements h3, main .revisions h3 {
      font-size: 120%; }
    main .paperBody p, main .paperBody h1, main .paperBody h2, main .paperBody #SignificantRevisions summary, main #SignificantRevisions .paperBody summary, main .paperBody .front-grid .contents h3, main .front-grid .contents .paperBody h3, main .paperBody h3, main .paperBody h4, main .paperBody h5 ul, main .appendix p, main .footnote-list p, main .furtherReading p, main .acknowledgements p, main .revisions p, main .appendix h1, main .footnote-list h1, main .furtherReading h1, main .acknowledgements h1, main .revisions h1, main .appendix h2, main .footnote-list h2, main .furtherReading h2, main .acknowledgements h2, main .revisions h2, main .appendix #SignificantRevisions summary, main .footnote-list #SignificantRevisions summary, main .furtherReading #SignificantRevisions summary, main .acknowledgements #SignificantRevisions summary, main .revisions #SignificantRevisions summary, main #SignificantRevisions .appendix summary, main #SignificantRevisions .footnote-list summary, main #SignificantRevisions .furtherReading summary, main #SignificantRevisions .acknowledgements summary, main #SignificantRevisions .revisions summary, main .appendix .front-grid .contents h3, main .footnote-list .front-grid .contents h3, main .furtherReading .front-grid .contents h3, main .acknowledgements .front-grid .contents h3, main .revisions .front-grid .contents h3, main .front-grid .contents .appendix h3, main .front-grid .contents .footnote-list h3, main .front-grid .contents .furtherReading h3, main .front-grid .contents .acknowledgements h3, main .front-grid .contents .revisions h3, main .appendix h3, main .footnote-list h3, main .furtherReading h3, main .acknowledgements h3, main .revisions h3, main .appendix h4, main .footnote-list h4, main .furtherReading h4, main .acknowledgements h4, main .revisions h4, main .appendix h5 ul, main .footnote-list h5 ul, main .furtherReading h5 ul, main .acknowledgements h5 ul, main .revisions h5 ul {
      margin: 1em 0; }
    main .paperBody a, main .appendix a, main .footnote-list a, main .furtherReading a, main .acknowledgements a, main .revisions a {
      border-bottom: thin solid;
      padding-bottom: 1px; }
    main .paperBody a:hover, main .appendix a:hover, main .footnote-list a:hover, main .furtherReading a:hover, main .acknowledgements a:hover, main .revisions a:hover {
      text-decoration: none; }
    main .paperBody .img-link a, main .paperBody a.img-link, main .paperBody a.img, main .appendix .img-link a, main .footnote-list .img-link a, main .furtherReading .img-link a, main .acknowledgements .img-link a, main .revisions .img-link a, main .appendix a.img-link, main .footnote-list a.img-link, main .furtherReading a.img-link, main .acknowledgements a.img-link, main .revisions a.img-link, main .appendix a.img, main .footnote-list a.img, main .furtherReading a.img, main .acknowledgements a.img, main .revisions a.img {
      border-bottom: none;
      padding-bottom: 0; }
    main .paperBody dd, main .appendix dd, main .footnote-list dd, main .furtherReading dd, main .acknowledgements dd, main .revisions dd {
      margin-left: 2em; }
    main .paperBody ul, main .appendix ul, main .footnote-list ul, main .furtherReading ul, main .acknowledgements ul, main .revisions ul {
      list-style: square;
      margin-left: 1.5em; }
    main .paperBody ol, main .appendix ol, main .footnote-list ol, main .furtherReading ol, main .acknowledgements ol, main .revisions ol {
      list-style: decimal;
      margin-left: 1.5em; }
    main .paperBody pre, main .appendix pre, main .footnote-list pre, main .furtherReading pre, main .acknowledgements pre, main .revisions pre {
      font-size: 90%;
      font-family: Inconsolata, monospace; }
    main .paperBody code, main .appendix code, main .footnote-list code, main .furtherReading code, main .acknowledgements code, main .revisions code {
      font-family: Inconsolata, monospace; }
    main .paperBody span.credit, main .appendix span.credit, main .footnote-list span.credit, main .furtherReading span.credit, main .acknowledgements span.credit, main .revisions span.credit {
      color: #808080;
      font-size: 80%; }
    main .paperBody hr, main .appendix hr, main .footnote-list hr, main .furtherReading hr, main .acknowledgements hr, main .revisions hr {
      border: none;
      display: block;
      background-color: #070D4A;
      height: 3px;
      border-right: 3px solid #ef5ba1;
      content: "";
      margin: 10px 15px; }
    main .paperBody blockquote, main .appendix blockquote, main .footnote-list blockquote, main .furtherReading blockquote, main .acknowledgements blockquote, main .revisions blockquote {
      /* margin-left: 3em; */
      border-left: 2px solid #0f1872;
      padding-left: 1em;
      font-style: italic;
      margin-left: 2em; }
    main .paperBody .show-code summary, main .appendix .show-code summary, main .footnote-list .show-code summary, main .furtherReading .show-code summary, main .acknowledgements .show-code summary, main .revisions .show-code summary {
      color: #A9A7A7;
      font-weight: bold;
      font-family: Open Sans, sans-serif;
      font-size: 80%; }
    main .paperBody .show-code pre, main .appendix .show-code pre, main .footnote-list .show-code pre, main .furtherReading .show-code pre, main .acknowledgements .show-code pre, main .revisions .show-code pre {
      background-color: #F7F8FE; }
    main .paperBody .sidebar, main .paperBody .soundbite, main .appendix .sidebar, main .footnote-list .sidebar, main .furtherReading .sidebar, main .acknowledgements .sidebar, main .revisions .sidebar, main .appendix .soundbite, main .footnote-list .soundbite, main .furtherReading .soundbite, main .acknowledgements .soundbite, main .revisions .soundbite {
      font-size: 80%;
      background-color: #F7F8FE;
      padding: 1em; }
      @media (min-width: 900px) {
        main .paperBody .sidebar, main .paperBody .soundbite, main .appendix .sidebar, main .footnote-list .sidebar, main .furtherReading .sidebar, main .acknowledgements .sidebar, main .revisions .sidebar, main .appendix .soundbite, main .footnote-list .soundbite, main .furtherReading .soundbite, main .acknowledgements .soundbite, main .revisions .soundbite {
          float: right;
          margin: 0 -250px 0 2em; } }
      @media (min-width: 900px) {
        main .paperBody .sidebar, main .paperBody .soundbite, main .appendix .sidebar, main .footnote-list .sidebar, main .furtherReading .sidebar, main .acknowledgements .sidebar, main .revisions .sidebar, main .appendix .soundbite, main .footnote-list .soundbite, main .furtherReading .soundbite, main .acknowledgements .soundbite, main .revisions .soundbite {
          width: 20em;
          margin-right: -250px; } }
      main .paperBody .sidebar h2, main .paperBody .sidebar #SignificantRevisions summary, main #SignificantRevisions .paperBody .sidebar summary, main .paperBody .soundbite h2, main .paperBody .soundbite #SignificantRevisions summary, main #SignificantRevisions .paperBody .soundbite summary, main .paperBody .sidebar h3, main .paperBody .soundbite h3, main .appendix .sidebar h2, main .footnote-list .sidebar h2, main .furtherReading .sidebar h2, main .acknowledgements .sidebar h2, main .revisions .sidebar h2, main .appendix .sidebar #SignificantRevisions summary, main .footnote-list .sidebar #SignificantRevisions summary, main .furtherReading .sidebar #SignificantRevisions summary, main .acknowledgements .sidebar #SignificantRevisions summary, main .revisions .sidebar #SignificantRevisions summary, main #SignificantRevisions .appendix .sidebar summary, main #SignificantRevisions .footnote-list .sidebar summary, main #SignificantRevisions .furtherReading .sidebar summary, main #SignificantRevisions .acknowledgements .sidebar summary, main #SignificantRevisions .revisions .sidebar summary, main .appendix .soundbite h2, main .footnote-list .soundbite h2, main .furtherReading .soundbite h2, main .acknowledgements .soundbite h2, main .revisions .soundbite h2, main .appendix .soundbite #SignificantRevisions summary, main .footnote-list .soundbite #SignificantRevisions summary, main .furtherReading .soundbite #SignificantRevisions summary, main .acknowledgements .soundbite #SignificantRevisions summary, main .revisions .soundbite #SignificantRevisions summary, main #SignificantRevisions .appendix .soundbite summary, main #SignificantRevisions .footnote-list .soundbite summary, main #SignificantRevisions .furtherReading .soundbite summary, main #SignificantRevisions .acknowledgements .soundbite summary, main #SignificantRevisions .revisions .soundbite summary, main .appendix .sidebar h3, main .footnote-list .sidebar h3, main .furtherReading .sidebar h3, main .acknowledgements .sidebar h3, main .revisions .sidebar h3, main .appendix .soundbite h3, main .footnote-list .soundbite h3, main .furtherReading .soundbite h3, main .acknowledgements .soundbite h3, main .revisions .soundbite h3 {
        font-size: 120%;
        margin-top: 0; }
      main .paperBody .sidebar .credit, main .paperBody .soundbite .credit, main .appendix .sidebar .credit, main .footnote-list .sidebar .credit, main .furtherReading .sidebar .credit, main .acknowledgements .sidebar .credit, main .revisions .sidebar .credit, main .appendix .soundbite .credit, main .footnote-list .soundbite .credit, main .furtherReading .soundbite .credit, main .acknowledgements .soundbite .credit, main .revisions .soundbite .credit {
        font-style: italic;
        text-align: right; }
    main .paperBody .soundbite, main .appendix .soundbite, main .footnote-list .soundbite, main .furtherReading .soundbite, main .acknowledgements .soundbite, main .revisions .soundbite {
      font-size: 110%;
      font-style: italic;
      width: 20em; }
      main .paperBody .soundbite p, main .appendix .soundbite p, main .footnote-list .soundbite p, main .furtherReading .soundbite p, main .acknowledgements .soundbite p, main .revisions .soundbite p {
        margin: 0; }
      main .paperBody .soundbite i, main .appendix .soundbite i, main .footnote-list .soundbite i, main .furtherReading .soundbite i, main .acknowledgements .soundbite i, main .revisions .soundbite i {
        font-weight: bold; }
    main .paperBody .book-sidebar, main .paperBody .sidebar-image, main .appendix .book-sidebar, main .footnote-list .book-sidebar, main .furtherReading .book-sidebar, main .acknowledgements .book-sidebar, main .revisions .book-sidebar, main .appendix .sidebar-image, main .footnote-list .sidebar-image, main .furtherReading .sidebar-image, main .acknowledgements .sidebar-image, main .revisions .sidebar-image {
      font-size: 80%;
      background-color: #F7F8FE;
      padding: 1em;
      max-width: 300px; }
      @media (min-width: 900px) {
        main .paperBody .book-sidebar, main .paperBody .sidebar-image, main .appendix .book-sidebar, main .footnote-list .book-sidebar, main .furtherReading .book-sidebar, main .acknowledgements .book-sidebar, main .revisions .book-sidebar, main .appendix .sidebar-image, main .footnote-list .sidebar-image, main .furtherReading .sidebar-image, main .acknowledgements .sidebar-image, main .revisions .sidebar-image {
          float: right;
          margin: 0 -250px 0 2em; } }
      @media (min-width: 900px) {
        main .paperBody .book-sidebar, main .paperBody .sidebar-image, main .appendix .book-sidebar, main .footnote-list .book-sidebar, main .furtherReading .book-sidebar, main .acknowledgements .book-sidebar, main .revisions .book-sidebar, main .appendix .sidebar-image, main .footnote-list .sidebar-image, main .furtherReading .sidebar-image, main .acknowledgements .sidebar-image, main .revisions .sidebar-image {
          width: 20em;
          margin-right: -250px; } }
      main .paperBody .book-sidebar img.cover, main .paperBody .sidebar-image img.cover, main .appendix .book-sidebar img.cover, main .footnote-list .book-sidebar img.cover, main .furtherReading .book-sidebar img.cover, main .acknowledgements .book-sidebar img.cover, main .revisions .book-sidebar img.cover, main .appendix .sidebar-image img.cover, main .footnote-list .sidebar-image img.cover, main .furtherReading .sidebar-image img.cover, main .acknowledgements .sidebar-image img.cover, main .revisions .sidebar-image img.cover {
        width: 130px;
        margin-left: 35px; }
      main .paperBody .book-sidebar.no-text, main .paperBody .sidebar-image.no-text, main .appendix .book-sidebar.no-text, main .footnote-list .book-sidebar.no-text, main .furtherReading .book-sidebar.no-text, main .acknowledgements .book-sidebar.no-text, main .revisions .book-sidebar.no-text, main .appendix .sidebar-image.no-text, main .footnote-list .sidebar-image.no-text, main .furtherReading .sidebar-image.no-text, main .acknowledgements .sidebar-image.no-text, main .revisions .sidebar-image.no-text {
        background-color: transparent;
        border-color: transparent; }
    main .paperBody .tweet-sidebar, main .appendix .tweet-sidebar, main .footnote-list .tweet-sidebar, main .furtherReading .tweet-sidebar, main .acknowledgements .tweet-sidebar, main .revisions .tweet-sidebar {
      font-size: 80%;
      background-color: #F7F8FE;
      padding: 1em;
      background-color: transparent; }
      @media (min-width: 900px) {
        main .paperBody .tweet-sidebar, main .appendix .tweet-sidebar, main .footnote-list .tweet-sidebar, main .furtherReading .tweet-sidebar, main .acknowledgements .tweet-sidebar, main .revisions .tweet-sidebar {
          float: right;
          margin: 0 -250px 0 2em; } }
      @media (min-width: 900px) {
        main .paperBody .tweet-sidebar, main .appendix .tweet-sidebar, main .footnote-list .tweet-sidebar, main .furtherReading .tweet-sidebar, main .acknowledgements .tweet-sidebar, main .revisions .tweet-sidebar {
          width: 20em;
          margin-right: -250px; } }
      @media (min-width: 900px) {
        main .paperBody .tweet-sidebar, main .appendix .tweet-sidebar, main .footnote-list .tweet-sidebar, main .furtherReading .tweet-sidebar, main .acknowledgements .tweet-sidebar, main .revisions .tweet-sidebar {
          width: 350px; } }
    main .paperBody blockquote.aside, main .appendix blockquote.aside, main .footnote-list blockquote.aside, main .furtherReading blockquote.aside, main .acknowledgements blockquote.aside, main .revisions blockquote.aside {
      font-size: 80%;
      background-color: #F7F8FE;
      padding: 1em; }
      @media (min-width: 900px) {
        main .paperBody blockquote.aside, main .appendix blockquote.aside, main .footnote-list blockquote.aside, main .furtherReading blockquote.aside, main .acknowledgements blockquote.aside, main .revisions blockquote.aside {
          float: right;
          margin: 0 -250px 0 2em; } }
      @media (min-width: 900px) {
        main .paperBody blockquote.aside, main .appendix blockquote.aside, main .footnote-list blockquote.aside, main .furtherReading blockquote.aside, main .acknowledgements blockquote.aside, main .revisions blockquote.aside {
          width: 20em;
          margin-right: -250px; } }
    main .paperBody pre, main .appendix pre, main .footnote-list pre, main .furtherReading pre, main .acknowledgements pre, main .revisions pre {
      font-size: 90%;
      line-height: 1.4; }
      main .paperBody pre span.highlight, main .appendix pre span.highlight, main .footnote-list pre span.highlight, main .furtherReading pre span.highlight, main .acknowledgements pre span.highlight, main .revisions pre span.highlight {
        color: #ef5ba1;
        font-weight: bold; }
      main .paperBody pre span.deleted, main .paperBody pre pre.deleted, main .appendix pre span.deleted, main .footnote-list pre span.deleted, main .furtherReading pre span.deleted, main .acknowledgements pre span.deleted, main .revisions pre span.deleted, main .appendix pre pre.deleted, main .footnote-list pre pre.deleted, main .furtherReading pre pre.deleted, main .acknowledgements pre pre.deleted, main .revisions pre pre.deleted {
        color: #ef5ba1;
        text-decoration: line-through; }
      main .paperBody pre span.suffix, main .appendix pre span.suffix, main .footnote-list pre span.suffix, main .furtherReading pre span.suffix, main .acknowledgements pre span.suffix, main .revisions pre span.suffix {
        font-style: italic; }
      main .paperBody pre span.lnum, main .appendix pre span.lnum, main .footnote-list pre span.lnum, main .furtherReading pre span.lnum, main .acknowledgements pre span.lnum, main .revisions pre span.lnum {
        color: #3546E5; }
    main .paperBody p.code-label, main .appendix p.code-label, main .footnote-list p.code-label, main .furtherReading p.code-label, main .acknowledgements p.code-label, main .revisions p.code-label {
      margin-bottom: 0;
      font-style: italic;
      font-size: 90%; }
    main .paperBody .next-installment, main .paperBody .installment-target, main .appendix .next-installment, main .footnote-list .next-installment, main .furtherReading .next-installment, main .acknowledgements .next-installment, main .revisions .next-installment, main .appendix .installment-target, main .footnote-list .installment-target, main .furtherReading .installment-target, main .acknowledgements .installment-target, main .revisions .installment-target {
      margin-top: 2em;
      background-color: #F7F8FE;
      padding: 10px;
      font-style: italic;
      font-size: 110%; }
    main .paperBody .code-remark, main .appendix .code-remark, main .footnote-list .code-remark, main .furtherReading .code-remark, main .acknowledgements .code-remark, main .revisions .code-remark {
      font-size: 80%;
      margin-left: 3em;
      font-style: italic;
      border-left: thin solid #0f1872;
      padding-left: 0.5em; }
    main .paperBody .code-href a, main .appendix .code-href a, main .footnote-list .code-href a, main .furtherReading .code-href a, main .acknowledgements .code-href a, main .revisions .code-href a {
      color: #80c9cf;
      font-size: 80%; }
    main .paperBody .p-sub, main .appendix .p-sub, main .footnote-list .p-sub, main .furtherReading .p-sub, main .acknowledgements .p-sub, main .revisions .p-sub {
      margin-left: 2em;
      font-size: 80%; }
    main .paperBody .foot-ref, main .appendix .foot-ref, main .footnote-list .foot-ref, main .furtherReading .foot-ref, main .acknowledgements .foot-ref, main .revisions .foot-ref {
      color: #3546E5; }
      main .paperBody .foot-ref a, main .appendix .foot-ref a, main .footnote-list .foot-ref a, main .furtherReading .foot-ref a, main .acknowledgements .foot-ref a, main .revisions .foot-ref a {
        border: none; }
    main .paperBody .article-card, main .appendix .article-card, main .footnote-list .article-card, main .furtherReading .article-card, main .acknowledgements .article-card, main .revisions .article-card {
      font-size: 80%;
      background-color: #F7F8FE;
      padding: 1em;
      background-color: #F7F8FE;
      padding: 1em;
      width: 320px; }
      @media (min-width: 900px) {
        main .paperBody .article-card, main .appendix .article-card, main .footnote-list .article-card, main .furtherReading .article-card, main .acknowledgements .article-card, main .revisions .article-card {
          float: right;
          margin: 0 -250px 0 2em; } }
      @media (min-width: 900px) {
        main .paperBody .article-card, main .appendix .article-card, main .footnote-list .article-card, main .furtherReading .article-card, main .acknowledgements .article-card, main .revisions .article-card {
          width: 20em;
          margin-right: -250px; } }
      main .paperBody .article-card h3, main .appendix .article-card h3, main .footnote-list .article-card h3, main .furtherReading .article-card h3, main .acknowledgements .article-card h3, main .revisions .article-card h3 {
        margin-top: 1em; }
      main .paperBody .article-card .abstract, main .appendix .article-card .abstract, main .footnote-list .article-card .abstract, main .furtherReading .article-card .abstract, main .acknowledgements .article-card .abstract, main .revisions .article-card .abstract {
        font-style: normal; }
      main .paperBody .article-card:after, main .appendix .article-card:after, main .footnote-list .article-card:after, main .furtherReading .article-card:after, main .acknowledgements .article-card:after, main .revisions .article-card:after {
        display: block;
        background-color: #070D4A;
        height: 3px;
        border-right: 3px solid #ef5ba1;
        content: "";
        margin-top: 1em; }
    main .paperBody .final, main .appendix .final, main .footnote-list .final, main .furtherReading .final, main .acknowledgements .final, main .revisions .final {
      margin-top: 4em; }
      main .paperBody .final::first-letter, main .appendix .final::first-letter, main .footnote-list .final::first-letter, main .furtherReading .final::first-letter, main .acknowledgements .final::first-letter, main .revisions .final::first-letter {
        font-size: 300%;
        line-height: 1em;
        padding-top: 0;
        float: left;
        padding-right: 3px;
        color: #0f1872; }
    main .paperBody .prompt, main .paperBody .response, main .appendix .prompt, main .footnote-list .prompt, main .furtherReading .prompt, main .acknowledgements .prompt, main .revisions .prompt, main .appendix .response, main .footnote-list .response, main .furtherReading .response, main .acknowledgements .response, main .revisions .response {
      padding: 1em; }
    main .paperBody .prompt, main .appendix .prompt, main .footnote-list .prompt, main .furtherReading .prompt, main .acknowledgements .prompt, main .revisions .prompt {
      background-color: #e0e4fb; }
    main .paperBody .response, main .appendix .response, main .footnote-list .response, main .furtherReading .response, main .acknowledgements .response, main .revisions .response {
      background-color: #F7F8FE;
      overflow-x: auto; }
    main .paperBody div.prompt, main .paperBody div.response, main .appendix div.prompt, main .footnote-list div.prompt, main .furtherReading div.prompt, main .acknowledgements div.prompt, main .revisions div.prompt, main .appendix div.response, main .footnote-list div.response, main .furtherReading div.response, main .acknowledgements div.response, main .revisions div.response {
      font-family: Inconsolata, monospace;
      font-size: 90%; }
      main .paperBody div.prompt .bg-gray-800, main .paperBody div.response .bg-gray-800, main .appendix div.prompt .bg-gray-800, main .footnote-list div.prompt .bg-gray-800, main .furtherReading div.prompt .bg-gray-800, main .acknowledgements div.prompt .bg-gray-800, main .revisions div.prompt .bg-gray-800, main .appendix div.response .bg-gray-800, main .footnote-list div.response .bg-gray-800, main .furtherReading div.response .bg-gray-800, main .acknowledgements div.response .bg-gray-800, main .revisions div.response .bg-gray-800 {
        display: none; }
      main .paperBody div.prompt .chat-h, main .paperBody div.response .chat-h, main .appendix div.prompt .chat-h, main .footnote-list div.prompt .chat-h, main .furtherReading div.prompt .chat-h, main .acknowledgements div.prompt .chat-h, main .revisions div.prompt .chat-h, main .appendix div.response .chat-h, main .footnote-list div.response .chat-h, main .furtherReading div.response .chat-h, main .acknowledgements div.response .chat-h, main .revisions div.response .chat-h {
        font-weight: bold; }
  main hr.bodySep {
    display: block;
    background-color: #070D4A;
    height: 10px;
    border-right: 10px solid #ef5ba1;
    content: "";
    margin: 5em 30px; }
  main .appendix, main .footnote-list, main .furtherReading, main .acknowledgements, main .revisions {
    font-size: 80%;
    line-height: 1.6; }
  main .footnote-list span.num {
    color: #3546E5;
    font-weight: bold;
    font-size: 100%; }
  main .footnote-list h3 {
    font-weight: bold; }
  main .catalog-notice {
    width: 100%;
    margin: 0;
    padding: 0;
    font-style: italic;
    font-size: 90%; }
    main .catalog-notice a:only-child {
      color: #3546E5; }
    main .catalog-notice p {
      margin-bottom: 1em; }
    @media (max-width: 599px) {
      main .catalog-notice img {
        max-height: 200px; } }
img {
  height: auto; }

#footer {
  margin-top: 2em; }

body #toc-dropdown {
  display: block;
  position: fixed; }
  body #toc-dropdown button {
    background: #F7F8FE;
    color: #0f1872; }
  body #toc-dropdown.show-dropdown-links {
    box-shadow: 0px 8px 16px 0px rgba(0, 0, 0, 0.2); }

body #dropdownLinks {
  display: none;
  background-color: #F7F8FE;
  overflow-y: auto;
  padding-bottom: 1.5em; }
  body #dropdownLinks a {
    font-family: Open Sans, sans-serif;
    color: #3546E5; }
    body #dropdownLinks a:hover {
      text-decoration: underline; }
  body #dropdownLinks ul ul {
    padding-left: 1em;
    list-style: none; }
  body #dropdownLinks li {
    margin: 0.3em 0; }

body #toc-dropdown.show-dropdown-links #dropdownLinks {
  display: block; }

@media (min-width: 600px) {
  body #toc-dropdown {
    bottom: 0;
    width: 150px;
    margin-left: 10px;
    right: 0; }
    body #toc-dropdown #dropdownLinks {
      height: 70vh;
      padding: 0.5em; }
    body #toc-dropdown:not(.show-dropdown-links) button {
      color: white;
      background: #9ca9f3;
      font-family: Open Sans, sans-serif;
      font-style: normal;
      font-weight: bold;
      font-size: 14px;
      padding: 5px;
      border-radius: 5px;
      margin: 2px;
      white-space: nowrap;
      cursor: pointer;
      border: none;
      vertical-align: middle; }
      body #toc-dropdown:not(.show-dropdown-links) button:hover {
        background: #6f81ed; } }
  @media (min-width: 600px) and (min-width: 1160px) {
    body #toc-dropdown:not(.show-dropdown-links) {
      left: 970px; } }
@media (min-width: 600px) {
  body #toc-dropdown.show-dropdown-links {
    top: auto;
    bottom: auto;
    width: 300px; }
    body #toc-dropdown.show-dropdown-links button {
      border: none;
      width: 100%;
      padding: 0.5em; } }
  @media (min-width: 600px) and (min-width: 1310px) {
    body #toc-dropdown.show-dropdown-links {
      left: 970px; } }
@media (max-width: 599px) {
  body #toc-dropdown {
    width: 100%;
    height: 2em;
    margin: 0;
    bottom: 0; }
    body #toc-dropdown button {
      width: 100%;
      height: 100%; }
      body #toc-dropdown button h2, body #toc-dropdown button main .front-grid .contents h3, main .front-grid .contents body #toc-dropdown button h3, body #toc-dropdown button main #SignificantRevisions summary, main #SignificantRevisions body #toc-dropdown button summary {
        height: 1em;
        margin: auto; }
  body #toc-dropdown.show-dropdown-links {
    top: 0;
    bottom: auto; }
  body button.dropdown-button {
    border: none; }
  body #dropdownLinks {
    position: absolute;
    height: 75vh;
    width: 100%;
    z-index: 3; }
    body #dropdownLinks li {
      padding: 12px 16px; } }

@media (max-width: 599px) {
  font-size: 19px;
  .no-scroll {
    overflow-y: hidden; }
  #banner, #footer, .navmenu {
    margin: 0px; }
  main {
    max-width: 100%;
    overflow-x: hidden !important;
    margin: auto;
    padding: 0 10px; }
    main div.frontMatter {
      width: 100%; }
    main div.frontMatter div.frontRight {
      display: none; }
    main div.frontMatter div.frontLeft {
      float: none;
      width: 100%; }
    main .paperBody {
      font-size: 19px; }
      main .paperBody blockquote.aside {
        clear: both;
        float: none; }
      main .paperBody .photo, main .paperBody div.fullPhoto, main .paperBody .figure, main .paperBody .photo-right, main .paperBody .top-image-full {
        float: none;
        margin: auto; }
      main .paperBody pre {
        overflow-x: auto;
        padding-bottom: 1.5em; }
      main .paperBody table {
        display: block;
        overflow-x: auto;
        padding-bottom: 0.5em;
        border: none; }
      main .paperBody .paperBody .end-box, main .paperBody .end-box {
        margin: auto; }
    main .appendix, main .footnote-list, main .furtherReading, main .acknowledgements, main .revisions {
      font-size: 19px; } }

main .paperBody > section > h2, main .front-grid .contents .paperBody > section > h3, main #SignificantRevisions .paperBody > section > summary {
  font-size: 150%; }
  main .paperBody > section > h2::before, main .front-grid .contents .paperBody > section > h3::before, main #SignificantRevisions .paperBody > section > summary::before {
    display: none; }

main .frontMatter {
  display: flex;
  flex-wrap: wrap;
  align-items: flex-end; }
  main .frontMatter .author {
    margin-right: 2em; }
  main .frontMatter .author-photo {
    width: 60px; }
  main .frontMatter .spacer {
    flex: 1;
    max-width: 20em; }

main .paperBody table {
  background-color: #F7F8FE;
  font-family: Open Sans, sans-serif;
  font-size: 90%;
  padding: 0.5em 1em;
  border: 2px solid #0f1872; }
  main .paperBody table th, main .paperBody table td {
    padding: 0.5em;
    border: thin solid #cad0f8; }
  main .paperBody table th {
    border-bottom: 2px solid #0f1872; }
  main .paperBody table caption {
    border: none; }
